# 1、两个相同长度的正整数序列上下一一对应，长度为0<n<100，
# 编号为1、2、3、4...，先根据第一列由小到大进行排序，
# 如第一列值相等，则按第二列由小到大排序，两列都相等则维持原顺序。
# 输出排序后的编号，输入输出序列数字以空格隔开
# 如，输入：
# 5
# 90 100 110 100 100
# 30 40 60 40 50
# 2
# 100 100
# 40 50
# 3
# 100 100 100
# 2 2 2

# 输出：
# 1 2 4 5 3

# 查找排序后的数组，然后删除掉，查找在raw数组的位置，如果有相同的，
# 生成字典的办法，

while True:
    try:
        A = int(input())+1
        Out = [str(x) for x in list(range(1,A))]  # join输出的需要字符串，这个出了一个BUG，且这个转换的方式又忘记了
        L1 = list(map(int,input().split(' ')))   # 这部分的内容又忘记了
        L2 = list(map(int,input().split(' ')))
        L3 = sorted(L1)
        dict1={}
        if A > 1:
            if L1 == L3:
                L3 = sorted(L2)
                if L2 != L3:
                    for i in range(1, A):
                        dict1['%d'%i] = L2[i-1]  # 数字生成字符的方式还是不会
                    Out = list(dict(sorted(dict1.items(), key=lambda item:item[1])).keys())  # 字典还是不会使用   且 和下面的属于重复代码，可以考虑怎么复用
            else:
                for i in range(1, A):
                    dict1['%d'%i] = L1[i-1]
                Out = list(dict(sorted(dict1.items(), key=lambda item:item[1])).keys())
        print(" ".join(Out))
    except:
        break